using System.Collections;

namespace GetTogether.RichText.Sys.Logging
{

	
	internal sealed class LoggerFactoryTrace : LoggerFactory
	{

		
		public override ILogger GetLogger( string name )
		{
			ILogger logger = (ILogger)loggers[ name ];
			if ( logger == null )
			{
				lock ( this )
				{
					logger = (ILogger)loggers[ name ];
					if ( logger == null )
					{
						ILogger newLogger = new LoggerTrace( name );
						loggers.Add( name, newLogger );
						logger = newLogger;
					}
				}
			}
			return logger;
		} // GetLogger

		
		// members
		private static readonly Hashtable loggers = new Hashtable();

	} // class LoggerFactoryTrace

}

